<?php
class EmpresaModel extends ModelBase
{
	public function getListaEmpresa($array)
	{
		include("config.php");
		
		$select = " e.id id, e.razon_social razon_social, e.cuit cuit, e.direccion direccion, p.descripcion provincia, l.descripcion localidad, e.email email, e.telefono telefono, e.observaciones observaciones ";
		$from = " gc_empresa e ";
		$from .= " LEFT JOIN gc_provincia p ON (e.id_provincia = p.id) ";
		$from .= " LEFT JOIN gc_localidad l ON (e.id_localidad = l.id) ";
		$where = " e.vigente = 'S' ";
		
		if(trim($array["razon_social"]) <> "")
		{
			$where .= " and e.razon_social LIKE '".trim($array["razon_social"])."%'";
		}

		$where .= " ORDER BY e.id ";
		
		$sqlpersonal = new SqlPersonalizado($config->get('dbhost'), $config->get('dbuser'), $config->get('dbpass') );
		$sqlpersonal->set_select($select); 
	  	$sqlpersonal->set_from($from);
		$sqlpersonal->set_where($where);
		$sqlpersonal->set_limit(($array["inicio"]*40),($array["inicio"]*40)+40); // PARA MYSQL
	
    	$sqlpersonal->load();
		$cant = $sqlpersonal->get_cant_registros();

		$result = array();
		$result[] = $sqlpersonal;
		$result[] = $cant;
		
    	return $result;	
	}
	
	
	public function grabar_datosEmpresa($array)
	{
		$tipop = $array["tipop"];
		
		$dato = new Empresa();
		if($tipop=="M")
		{
			$dato->add_filter("id","=",$array["id_empresa"]);
			$dato->load();
		}
		
		$dato->set_data("razon_social",$array["razon_social"]);
		$dato->set_data("cuit",$array["cuit"]); 
		$dato->set_data("direccion",$array["direccion"]);
		$dato->set_data("id_provincia",$array["id_provincia"]);
		$dato->set_data("id_localidad",$array["id_localidad"]);
		$dato->set_data("email",$array["email"]); 
		$dato->set_data("telefono",$array["telefono"]);
		$forzado_rrhh = "N";
		if($array["forzado_rrhh"]=="on"){$forzado_rrhh = "S";}
		$dato->set_data("forzado_rrhh",$forzado_rrhh);
		$forzado_excep = "N";
		if($array["forzado_excep"]=="on"){$forzado_excep = "S";}
		$dato->set_data("forzado_excep",$forzado_excep);
		if($tipop=="A")
		{
			$dato->set_data("id_tipo_ingreso",1);
		}
		$dato->set_data("observaciones",$array["observaciones"]); 
		$dato->set_data("vigente","S");
	
		$dato->save();
		$dato->load();
		
		// HABILITAT CONTRATISTAS SEGUN FORZADO
		if($forzado_rrhh == "S")
		{
			$sql = "INSERT INTO gc_contratista_audi SELECT *, '".$array["idusuario"]."', '".date("Y-m-d H:i:s")."', 'U' FROM gc_contratista WHERE id_empresa = ".$dato->get_data("id")." and vigente = 'S' ";
			consulta($sql);
		
			$sql = " UPDATE gc_contratista SET habilitado = 'N' WHERE id_empresa = ".$dato->get_data("id")." and vigente = 'S' ";
		}
		
		if($forzado_excep == "S")
		{
			$sql = "INSERT INTO gc_contratista_audi SELECT *, '".$array["idusuario"]."', '".date("Y-m-d H:i:s")."', 'U' FROM gc_contratista WHERE id_empresa = ".$dato->get_data("id")." and vigente = 'S' ";
			consulta($sql);
		
			$sql = " UPDATE gc_contratista SET habilitado = 'N' WHERE id_empresa = ".$dato->get_data("id")." and vigente = 'S' ";
		}
		
		return $dato;
		
	}	
	
	
	public function getEmpresa($array)
	{
		$dato = new Empresa();
		$dato->add_filter("id","=",$array["id"]);
		$dato->load();
		
		return $dato;
	}
	
	public function bajaEmpresa($array)
	{
		$dato = new Empresa();
		$dato->add_filter("id","=",$array["id"]);
		$dato->load();
		$dato->set_data("vigente","N");
		$dato->save();
	}
}
?>

